﻿// Original author contact info: Owen Emlen (owene_1998@yahoo.com)
// Note: other individuals may also have contributed to this code
// Project hosted on CodePlex.com as of 1/10/2009 at http://wpfimageviewer.codeplex.com/EmlenMud
using System;
using System.ComponentModel;
using BrainTechLLC;
using BrainTechLLC.FilterExtensions;
using System.Drawing;
using System.IO;
using System.Threading;
using System.Diagnostics;

namespace ImageAppDataModels
{
    [Serializable]
    public partial class ThumbnailInfo : BaseNotifyPropertyChanged, INotifyPropertyChanged
    {
        protected int _originalBitmapWidth;
        protected int _originalBitmapHeight;
        protected DateTime _originalFileDate;
        protected long _originalFileSize;
        protected byte[] _ThumbBytes;

        /// <summary>
        /// The width of the original bitmap
        /// </summary>
        public int OriginalBitmapWidth
        {
            get { return _originalBitmapWidth; }
            set
            {
                if (_originalBitmapWidth != value)
                {
                    _originalBitmapWidth = value;
                    OnPropertyChanged("LastOriginalBitmapWidth");
                }
            }
        }

        public long OriginalFileSize
        {
            get { return _originalFileSize; }
            set
            {
                if (_originalFileSize != value)
                {
                    _originalFileSize = value;
                    OnPropertyChanged("LastOriginalFileSize");
                }
            }
        }

        public DateTime OriginalFileDate
        {
            get { return _originalFileDate; }
            set
            {
                if (_originalFileDate != value)
                {
                    _originalFileDate = value;
                    OnPropertyChanged("LastOriginalFileDate");
                }
            }
        }

        /// <summary>
        /// The height of the original bitmap
        /// </summary>
        public int OriginalBitmapHeight
        {
            get { return _originalBitmapHeight; }
            set
            {
                if (_originalBitmapHeight != value)
                {
                    _originalBitmapHeight = value;
                    OnPropertyChanged("LastOriginalBitmapHeight");
                }
            }
        }

        public byte[] ThumbBytes
        {
            get { return _ThumbBytes; }
            set
            {
                if (_ThumbBytes != value)
                {
                    _ThumbBytes = value;
                    OnPropertyChanged("LastThumbBytes");
                }
            }
        }

    }
}
